package com.itheima.service;

import com.github.pagehelper.Page;
import com.itheima.pojo.Blog;
import com.itheima.pojo.Tag;

import java.util.Map;

/**
 * 2020年8月3日19:51:34
 * 罗旋创建标签实体类
 */
public interface TagService {
    /**
     * 2020年8月3日20:46:37
     * 添加标签
     * @param tag 标签实体类
     */
    void add(Tag tag);

    /**
     * 2020年8月4日09:51:19
     * 根据uid删除标签
     * @param uid
     */
    void deleteByUid(String uid);

    /**
     * 2020年8月4日09:51:13
     * 编辑标签
     * @param tag
     */
    void edit(Tag tag);

    /**
     * 2020年8月4日10:28:04
     * 根据关键词分页查询
     * @param searchMap
     * @return
     */
    Page<Tag> findPage(Map searchMap);

    /**
     * 2020年8月4日11:37:12
     * 置顶标签
     * @param tag
     */
    void stick(Tag tag);

    /**
     * 2020年8月4日14:10:08
     * 根据引用排序
     */
    void tagSortByCite();

    /**
     * 2020年8月4日14:50:27
     * 根据点击排序
     */
    void tagSortByClickCount();

    Page<Blog> getArticleByTagUid(String uid, Integer currentPage, Integer pageSize);

    Page<Tag> getTagList(Integer currentPage, Integer pageSize);

    Page<Tag> getHotTag(Integer pageSize);

}
